In general, existing copiers, printers and fax machines have several inputs and outputs that must be sensed in order for the machines to function properly. Some of these inputs and outputs sense and turn on/off a wide variety of devices present in the machines, such as, for example, clutches, motors, switches, etc. A microprocessor based controller is generally used to control each and every input/output throughout any particular system. In order for the microprocessor to be able to perform its control function, each and every wire from the respective inputs and outputs must be routed, i.e., harnessed, back to the board containing the microprocessor controller. An average 50 copies per minute copier, for example, may have as many as 200 or more such input and output signals. This high number of input/output signals being routed to and from the microprocessor board can lead to very large wire harness bundles and an almost unmanageable number of connectors on the main processor board to enable communication with the microprocessor controller. In addition to the problem of high harnessing costs associated with this form of input/output control, noise and packaging are also problems associated with this form of input/output control. Moreover, connectors and wires are traditionally the most unreliable components in a copier's electronic subsystems.
One solution to reduce the number of connectors on the main processor board and to overcome the problems associated with the high harnessing requirements described above, has been to multiplex the input/output data onto less wires, thereby reducing the number of wires and connectors required by the system. In a multiplexed system, only one wire is used for inputs and one wire is used for outputs. For example, FIG. 1 shows a multiplexing scheme for a high-end electronic reprographic system. In this system, a plurality of integrated input/output controllers (IIOC) are utilized to control various switches, relays, clutches, etc. associated with the system. The IIOC can be a digital type device or an analog type device. In the analog configuration, the IIOC can be used to provide a reference to set the output voltage or current of a xerographic power supply, for example, as well as to monitor the setting for variations from this setting. In a digital configuration, the IIOC has the capability of providing required higher power drive signals. For example, digitally configured IIOCs can provide connections to electromechanical devices, such as, for example, solenoids and motors as well as the required interface to detect the state of input devices, such as, for example, mechanical switches and optical sensors. These IIOCs are multiplexed using five wire multiplex buses 18, connected in parallel to each IIOC module 20. The multiplex buses 18 require only five wires for the "N" modules connected to each bus. These wires represent serial input data (SID), serial output data (SOD), clock data, power and ground. FIG. 1 shows eight five wire buses 18 connected to the "N" IIOC modules 20.
The controller 10 has a microprocessor 15 that interfaces to the IIOC modules 20 through a device called a serial input/output controller (SIOC) 12. The SIOC, in its basic form performs parallel to serial conversion and serial to parallel conversion with the necessary timing logic to generate the framing pulse and clock signals. The SIOC 12 performs the function of accepting parallel data from the microprocessor 15 and sequentially placing the data onto the outgoing SID line, and collects the incoming serial data from the incoming SOD line and presents that data in parallel to the microprocessor 15. Thus, the SIOC frees the microprocessor 15 from the time consuming task of performing the serial to parallel and parallel to serial conversions and generating the required timing to drive the buses 18. In a high speed or high performance system, this task would be too much of a real time burden but in low speed or low performance environments, this task could be performed by the microprocessor 15 without the SIOC 12.
However, in IIOC/SIOC configured systems, the SIOC must rely on a dedicated microprocessor to filter the inputs received from the individual IIOCs. Since there are many inputs to filter, there is no real time left over to perform any other functions. Thus, a system of this type requires memory and interface hardware in addition to a dedicated microprocessor(s) to achieve suitable input filtering. The dedicated microprocessor and its associated hardware increase both the cost and space requirements of the system to provide compatibility with an IIOC based system architecture.